import ElementPlus from 'element-plus'
import 'element-plus/dist/index.css'
import * as ElementPlusIconsVue from '@element-plus/icons-vue'

// 定义插件
const ElementPlusPlugin = {
  install(app) {
    // 使用 Element Plus
    app.use(ElementPlus)
    
    // 注册所有图标
    for (const [key, component] of Object.entries(ElementPlusIconsVue)) {
      app.component(key, component)
    }
    
    // 全局配置消息组件 - 使用 ElementPlus 对象
    app.config.globalProperties.$message = ElementPlus.ElMessage
    app.config.globalProperties.$notify = ElementPlus.ElNotification
    app.config.globalProperties.$confirm = ElementPlus.ElMessageBox.confirm
    app.config.globalProperties.$alert = ElementPlus.ElMessageBox.alert
    
    // 全局属性
    app.config.globalProperties.$ELEMENT = {
      size: 'default',
      zIndex: 3000
    }
  }
}

export default ElementPlusPlugin
